Mobile data capture devices (MDCD) are used to capture data. Mobile data capture devices may include, for example, cellular telephones, personal digital assistants (PDAs), digital cameras, digital video recorders, and so on. MDCDs are used in different environments and in different industries to capture, store, and even process different types of data. Users may desire to take actions including querying, managing, and protecting the data captured on the MDCD. However, MDCDs have typically been limited in the actions that they can perform. Typically, many actions related to processing captured data have only been available at a “back-end” processor having more extensive capabilities than the “front-end” MDCD.
Some MDCDs have even included a local database component. Once again this component has typically been limited and thus many database related actions have only been available at a back-end database. Traditionally, these “front-end” mobile databases (MDBs) have synchronized with a back-end enterprise database (EDB) to keep both systems up to date.
Consider figure one. An MDB 110 may communicate with an EDB 120. While a single MDB 110 is illustrated, it is to be appreciated that in some case multiple MDBs could be connected to the same EDB 120. The communication may be, for example, a data synchronization illustrated as flow 130. The MDB 110 may be a light-weight embeddable database that provides only limited multimedia storage ability. MDB 110 may run on a simple MDCD. The data synchronization may be a one-way and/or two-way data synchronization between the MDB 110 and the EDB 120. Data (e.g., text, media) can be captured by the MDCD on which the MDB 110 runs and then uploaded to the EDB 120. Similarly, data may be downloaded from the EDB 120 to the MDB 110. The EDB 120 may be a back-end database with more extensive storage and processing capabilities than the MDB 110. In one example, the MDB 110 may have limited media (e.g., digital image, voice, video, MP3) storage and/or processing capability while the EDB 120 may have more extensive media storage and/or processing capability.
In some cases, MDB 110 may not recognize multimedia data and thus MDB 110 can not possibly provide functions including searching, indexing, querying, and so on, of multimedia data. In some examples, media and/or multimedia data may simply have been treated by an MDCD and its MDB 110 as a related collection of an unknown stream of bytes. Thus, this data may have been stored as a binary large object (BLOB) upon which no operations could be performed by the MDB 110 other than transferring the BLOB to the EDB 120.